home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Diamond Collection
/
The Diamond Collection (Software Vault)(Digital Impact).ISO
/
cdr37
/
zlist_20.zip
/
ZLIST.PPE
(
.txt
)
< prev
next >
Wrap
PCBoard Programming Language Executable
|
1995-03-13
|
19KB
|
1,285 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Boolean BOOLEAN002
Boolean BOOLEAN003
Boolean BOOLEAN004
Boolean BOOLEAN005
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
String STRING011
String STRING012
String STRING013
String STRING014
String STRING015
String STRING016
String STRING017
String STRING018
String STRING019
String STRING020
String STRING021
String STRING022
String STRING023
String STRING024
String STRING025
String STRING026
String STRING027
String STRING028
String STRING029
String STRING030
String STRING031
String STRING032
String STRING033
String STRING034
String STRING035
String STRING036
String STRING037
String STRING038
String STRING039
String STRING040
String STRING041
String STRING042
String STRING043
String STRING044
String STRING045
String STRING046
String STRING047
String STRING048
String STRING049
String STRING050
String STRING051
String STRING052
String STRING053
String STRING054
String STRING055
String STRING056
String STRING057
String STRING058
String STRING059
String STRING060
String STRING061
String STRING062
String STRING063
String STRING064
String STRING065
String STRING066
String STRING067
String STRING068
String STRING069
String STRING070
String STRING071
String STRING072
String STRING073
String STRING074
String STRING075
String STRING076
String STRING077
String STRING078
String STRING079
String STRING080
String STRING081
String STRING082
String STRING083
String STRING084
;------------------------------------------------------------------------------
STRING002 = "2.0"
INTEGER002 = 34770
INTEGER003 = 19220
INTEGER005 = 1
Newline
PrintLn "@X0FZippyList @X07-@X0F (C) Copyright 1994-1995 @X07-@X0F Whitewater Technologies, Inc."
PrintLn "@X07Licensed for distribution to DavaSoft BBS (718-967-6827) (support@dava.com)"
Print "@X0AInitializing ZippyList v" + STRING002 + " ... "
STRING003 = Chr(85) + Chr(78) + Chr(82) + Chr(69) + Chr(71) + Chr(73) + Chr(83) + Chr(84) + Chr(69) + Chr(82) + Chr(69) + Chr(68)
INTEGER010 = 32
For INTEGER010 = 32 To 255
STRING075 = STRING075 + Chr(INTEGER010)
Next
INTEGER010 = 1
INTEGER001 = 0
STRING079 = Chr(13)
STRING083 = 256
STRING084 = DefColor()
STRING076 = YesChar()
STRING077 = NoChar()
STRING078 = STRING076 + STRING077
Log "ZippyList v" + STRING002 + " Executed at " + Left(Time(), 5), 0
Newline
If (DbgLevel() > 0) Log " ■ ZLIST: Debug Mode is ON (Level " + DbgLevel() + ")", 0
If (Ver() <= 1500) Then
Log " ■ Error: PCBoard v15.2 or later MUST be used!", 0
Else
GetUser
STRING080 = GetToken()
If (INTEGER005 <> 0) Then
INTEGER006 = FileInf(PPEPath() + PPEName() + ".PPE", 2)
INTEGER004 = Date()
If (Len(Trim(STRING003, " ")) <> 12) Goto LABEL004
ElseIf (INTEGER005 == 0) Then
INTEGER001 = 1
Endif
Gosub LABEL003
Gosub LABEL002
If (INTEGER001 <> 1) Then
Newline
PrintLn "@X07[@X0CThis version of ZippyList is " + STRING003 + "@X07]"
PrintLn "@X07[@X0ACall DavaSoft to register - BBS: 718-967-6827 Voice: 718-967-5713@X07]"
Log " ■ " + STRING003 + " version of ZippyList!", 0
Delay 10 * 18.2
Endif
Newline
If (BOOLEAN001 || !U_Expert) Then
If (Exist(STRING020)) Then
DispFile STRING020, 4 + 2
Goto LABEL001
Endif
Endif
:LABEL001
Gosub LABEL056
If (U_Expert && !BOOLEAN002) Then
PrintLn STRING064
Newline
Endif
Gosub LABEL044
Gosub LABEL005
Goto LABEL059
:LABEL002
INTEGER001 = 0
STRING004 = ""
STRING004 = Chr(52) + String(Len(STRING016) - 2)
STRING004 = STRING004 + Chr(55) + String(Len(STRING016) - 9)
STRING004 = STRING004 + Chr(49) + String(Len(STRING016) - 6)
STRING004 = STRING004 + Chr(45) + Chr(50) + String(Len(STRING015) - 5) + Chr(49)
For INTEGER009 = 1 To 25
STRING001 = Mid(STRING015, INTEGER009, 1)
INTEGER008 = Asc(STRING001)
INTEGER007 = INTEGER007 + INTEGER008
STRING001 = Mid(STRING016, INTEGER009, 1)
INTEGER008 = Asc(STRING001) + 4
INTEGER007 = INTEGER007 + INTEGER008
Next
STRING001 = Right(STRING016, 1)
INTEGER008 = Asc(STRING001)
INTEGER007 = INTEGER007 - INTEGER008
INTEGER007 = (INTEGER007 * (Len(Strip(STRING015, " ")) * 9)) * 2
If (INTEGER007 == ToInteger(STRING017)) Then
INTEGER001 = 1
Else
INTEGER001 = 0
Endif
Return
:LABEL003
If (Exist(PPEPath() + "ZLIST.CFG")) Then
FOpen 0, PPEPath() + "ZLIST.CFG", 0, 0
FGet 0, STRING015
FGet 0, STRING016
FGet 0, STRING017
FGet 0, STRING018
FGet 0, STRING019
FGet 0, STRING020
FGet 0, STRING021
FGet 0, STRING022
FGet 0, STRING023
FGet 0, STRING024
FGet 0, STRING025
FGet 0, STRING026
FGet 0, STRING027
FGet 0, STRING028
FGet 0, STRING029
FGet 0, STRING030
FGet 0, STRING031
FGet 0, STRING032
FGet 0, STRING033
FGet 0, STRING034
FGet 0, STRING035
FGet 0, STRING036
FGet 0, STRING037
FGet 0, STRING038
FGet 0, STRING039
FGet 0, STRING040
FGet 0, STRING041
FGet 0, STRING042
FGet 0, STRING043
FGet 0, STRING044
FGet 0, STRING045
FClose 0
STRING015 = Upper(Trim(STRING015, " "))
STRING016 = Trim(STRING016, " ")
STRING017 = Upper(Trim(STRING017, " "))
If (Upper(Left(STRING018, 1)) == "Y") Then
BOOLEAN001 = 1
Else
BOOLEAN001 = 0
Endif
If (Upper(Left(STRING019, 1)) == "Y") Then
BOOLEAN002 = 1
Else
BOOLEAN002 = 0
Endif
STRING020 = PPEPath() + Upper(STRING020)
STRING021 = PPEPath() + Upper(STRING021)
STRING022 = PPEPath() + Upper(STRING022)
STRING023 = PPEPath() + Upper(STRING023)
STRING024 = PPEPath() + Upper(STRING024)
STRING025 = PPEPath() + Upper(STRING025)
STRING026 = PPEPath() + Upper(STRING026)
STRING027 = PPEPath() + Upper(STRING027)
STRING028 = PPEPath() + Upper(STRING028)
STRING029 = PPEPath() + Upper(STRING029)
STRING030 = PPEPath() + Upper(STRING030)
STRING031 = PPEPath() + Upper(STRING031)
STRING032 = PPEPath() + Upper(STRING032)
STRING033 = PPEPath() + Upper(STRING033)
STRING034 = PPEPath() + Upper(STRING034)
STRING035 = PPEPath() + Upper(STRING035)
STRING036 = PPEPath() + Upper(STRING036)
STRING037 = PPEPath() + Upper(STRING037)
STRING038 = PPEPath() + Upper(STRING038)
STRING039 = PPEPath() + Upper(STRING039)
STRING040 = Upper(STRING040)
STRING041 = Upper(STRING041)
STRING042 = ReplaceStr(STRING042, "%PCBDRIVE%", GetEnv("PCBDRIVE"))
STRING042 = ReplaceStr(STRING042, "%PCBDIR%", GetEnv("PCBDIR"))
STRING042 = ReplaceStr(STRING042, "%PCBNODE%", String(PcbNode()))
STRING042 = Upper(RTrim(STRING042, "\")) + "\"
STRING043 = Upper(STRING043)
STRING043 = Replace(STRING043, "%PCBDRIVE%", GetEnv("PCBDRIVE"))
STRING043 = Replace(STRING043, "%PCBDIR%", GetEnv("PCBDIR"))
STRING043 = Replace(STRING043, "%PCBNODE%", String(PcbNode()))
STRING044 = Replace(STRING044, "%PCBDRIVE%", GetEnv("PCBDRIVE"))
STRING044 = Replace(STRING044, "%PCBDIR%", GetEnv("PCBDIR"))
STRING044 = Replace(STRING044, "%PCBNODE%", String(PcbNode()))
STRING045 = ReplaceStr(STRING045, "%PCBDRIVE%", GetEnv("PCBDRIVE"))
STRING045 = ReplaceStr(STRING045, "%PCBDIR%", GetEnv("PCBDIR"))
STRING045 = ReplaceStr(STRING045, "%PCBNODE%", String(PcbNode()))
STRING045 = Upper(RTrim(STRING045, "\")) + "\"
If (!Exist(STRING043) && (STRING043 <> "")) Then
PrintLn "@X0CError: Compression program not found! Please notify Sysop!"
Log " ■ Error: Compression program not found!", 0
Log " ■ Check configuration file: ZLIST.CFG", 0
STRING043 = ""
Goto LABEL059
Endif
Else
Log "Error: ZLIST.CFG Configuration file not found!", 0
Newlines 2
PrintLn "@X0CConfiguration file not found! Please Notify Sysop!"
Newlines 2
Wait
Goto LABEL059
Endif
STRING081 = Upper(Trim(LangExt(), " "))
STRING081 = Strip(STRING081, ".")
If (STRING081 <> "") Then
If (Exist(RTrim(STRING034, ".") + "." + STRING081)) STRING034 = RTrim(STRING034, ".") + "." + STRING081
Endif
If (Exist(STRING034)) Then
FOpen 0, STRING034, 0, 0
FGet 0, STRING046
FGet 0, STRING047
FGet 0, STRING048
FGet 0, STRING049
FGet 0, STRING050
FGet 0, STRING051
FGet 0, STRING052
FGet 0, STRING053
FGet 0, STRING054
FGet 0, STRING055
FGet 0, STRING056
FGet 0, STRING057
FGet 0, STRING058
FGet 0, STRING059
FGet 0, STRING060
FGet 0, STRING061
FGet 0, STRING062
FGet 0, STRING063
FGet 0, STRING064
FGet 0, STRING065
FGet 0, STRING066
FGet 0, STRING067
FGet 0, STRING068
FGet 0, STRING069
FGet 0, STRING070
FGet 0, STRING071
FGet 0, STRING072
FGet 0, STRING073
FGet 0, STRING074
FClose 0
Else
Log " ■ Error: Configuration file not found!", 0
Newlines 2
PrintLn "@X0CConfiguration file not found! Please Notify Sysop!"
Newlines 2
Wait
Goto LABEL059
Endif
Return
:LABEL004
Cls
Beep
Newlines 2
PrintLn "@X07[@X0CZippyList is (c) Copyrighted Software by Whitewater Technologies, Inc.@X07]"
PrintLn "@X07[@X0FDavaSoft BBS - 718-967-6827@X07]"
Newline
PrintLn "@X07[@X0CZippyList's authentic seal has been altered!@X07]"
PrintLn "@X07[@X07Please call DavaSoft BBS and download the newest release@X07]"
Log " ■ ZLIST: Seal has been ALTERED!", 0
Newline
Goto LABEL059
:LABEL005
STRING082 = ""
OpText STRING012
If (!U_Expert || BOOLEAN002) Then
If (Exist(STRING021)) Then
DispFile STRING021, 4 + 2
Goto LABEL006
Endif
Log " ■ Error: ZMAIN file not found!", 0
Endif
:LABEL006
While (STRING082 == "") Do
InputStr STRING048, STRING082, 7, 4, "FSMLCDAGENUHQ?", STRING083 + 8
STRING082 = Trim(STRING082, " ")
If (STRING082 == "FL") STRING082 = "FLAG"
If (STRING082 == "FLA") STRING082 = "FLAG"
If (STRING082 == "ME") STRING082 = "MENU"
If (STRING082 == "MEN") STRING082 = "MENU"
If (STRING082 == "F") Then
Dir "R"
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL005
Continue
Endif
If (STRING082 == "S") Then
Gosub LABEL013
Goto LABEL005
Continue
Endif
If (STRING082 == "L") Then
STRING082 = ""
OpText STRING012
If (Exist(STRING027)) Then
DispFile STRING027, 4 + 2
Goto LABEL007
Endif
Log " ■ Error: ZEXECMD file not found!", 0
PrintLn "@X0CExecution Command Display file not found - Please notify Sysop!"
:LABEL007
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL005
Continue
Endif
If (STRING082 == "C") Then
STRING082 = "Y"
OpText STRING012
If (Exist(STRING028)) Then
DispFile STRING028, 4 + 2
Goto LABEL008
Endif
Log " ■ Error: ZCLEAR file not found!", 0
PrintLn "@X0CZLEAR file not found - Please notify Sysop!"
:LABEL008
InputStr STRING073, STRING082, 7, 1, STRING078, STRING083 + 8 + 4 + 2
STRING082 = Trim(STRING082, " ")
If ((STRING082 == "Y") || (STRING082 == "")) Gosub LABEL056
Goto LABEL005
Continue
Endif
If (STRING082 == "D") Then
STRING082 = ""
Newline
If (BOOLEAN003) Then
BOOLEAN005 = 0
Gosub LABEL057
Goto LABEL009
Endif
PrintLn STRING069
:LABEL009
Newline
Continue
Endif
If (STRING082 == "FLAG") Then
STRING082 = ""
Newline
If (BOOLEAN003) Then
OpText STRING041
PrintLn STRING066
BOOLEAN005 = 1
Goto LABEL010
Endif
PrintLn STRING070
:LABEL010
Newline
If (!U_Expert || BOOLEAN002) Then
Wait
Goto LABEL005
Endif
Continue
Endif
If (STRING082 == "MENU") Then
STRING082 = ""
If (Exist(STRING021)) Then
DispFile STRING021, 4 + 2
Goto LABEL011
Endif
Log " ■ Error: ZMAIN file not found!", 0
PrintLn "@X0CMain Menu file not found - Please notify Sysop!"
:LABEL011
Continue
Endif
If ((STRING082 == "H") || (STRING082 == "?")) Then
If (Exist(STRING029)) Then
DispFile STRING029, 4 + 2
Goto LABEL012
Endif
Log " ■ Error: ZHLP file not found!", 0
PrintLn "@X0CMain Menu Help file not found - Please notify Sysop!"
:LABEL012
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL005
Continue
Endif
If (STRING082 == "Q") Then
Goto LABEL059
Continue
Endif
If (STRING082 == "") Then
STRING082 = ""
Continue
Endif
STRING082 = ""
DispText 56, 256 + 128 + 2048
Newline
EndWhile
Goto LABEL059
Return
:LABEL013
STRING082 = ""
OpText STRING012
If (!U_Expert || BOOLEAN002) Then
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL014
Endif
Log " ■ Error: ZSEARCH file not found!", 0
Endif
:LABEL014
While (STRING082 == "") Do
InputStr STRING049, STRING082, 7, 4, "123LMENUH?Q", STRING083 + 8
STRING082 = Trim(STRING082, " ")
If (STRING082 == "ME") STRING082 = "MENU"
If (STRING082 == "MEN") STRING082 = "MENU"
If (STRING082 == "1") Then
Gosub LABEL023
If (!U_Expert || BOOLEAN002) Then
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL015
Endif
Log " ■ Error: ZSEARCH file not found!", 0
Endif
:LABEL015
Continue
Endif
If (STRING082 == "2") Then
Gosub LABEL033
If (!U_Expert || BOOLEAN002) Then
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL016
Endif
Log " ■ Error: ZSEARCH file not found!", 0
Endif
:LABEL016
Continue
Endif
If (STRING082 == "3") Then
If (STRING008 == "000000") STRING008 = Left(U_LDir(), 2) + Mid(U_LDir(), 4, 2) + Right(U_LDir(), 2)
Gosub LABEL038
If (!U_Expert || BOOLEAN002) Then
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL017
Endif
Log " ■ Error: ZSEARCH file not found!", 0
Endif
:LABEL017
Continue
Endif
If (STRING082 == "L") Then
STRING082 = ""
OpText STRING012
If (Exist(STRING027)) Then
DispFile STRING027, 4 + 2
Goto LABEL018
Endif
Log " ■ Error: ZEXECMD file not found!", 0
PrintLn "@X0CExecution Command Display file not found - Please notify Sysop!"
:LABEL018
If (!U_Expert || BOOLEAN002) Then
Wait
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL019
Endif
Log " ■ Error: ZSEARCH file not found!", 0
Endif
:LABEL019
Continue
Endif
If (STRING082 == "MENU") Then
STRING082 = ""
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL020
Endif
Log " ■ Error: ZSEARCH file not found!", 0
PrintLn "@X0CSearch Menu file not found - Please notify Sysop!"
:LABEL020
Continue
Endif
If ((STRING082 == "H") || (STRING082 == "?")) Then
STRING082 = ""
If (Exist(STRING030)) Then
DispFile STRING030, 4 + 2
Goto LABEL021
Endif
Log " ■ Error: ZHLPS file not found!", 0
PrintLn "@X0CSearch Menu Help file not found - Please notify Sysop!"
:LABEL021
If (!U_Expert || BOOLEAN002) Then
Wait
If (Exist(STRING022)) Then
DispFile STRING022, 4 + 2
Goto LABEL022
Endif
Log " ■ Error: ZSEARCH file not found!", 0
Endif
:LABEL022
Continue
Endif
If (STRING082 == "Q") Then
Continue
Endif
If (STRING082 == "") Then
STRING082 = ""
Continue
Endif
STRING082 = ""
DispText 56, 256 + 128 + 2048
Newline
EndWhile
STRING082 = ""
Return
:LABEL023
STRING082 = ""
While (STRING082 == "") Do
Gosub LABEL044
OpText STRING012
If (!U_Expert || BOOLEAN002) Gosub LABEL047
InputStr STRING050, STRING082, 7, 4, "MENDFCSUH?Q", STRING083 + 8
STRING082 = Trim(STRING082, " ")
If (STRING082 == "ME") STRING082 = "MENU"
If (STRING082 == "MEN") STRING082 = "MENU"
If (STRING082 == "M") Then
STRING082 = ""
Gosub LABEL027
Continue
Endif
If (STRING082 == "E") Then
STRING082 = ""
Gosub LABEL028
Continue
Endif
If (STRING082 == "N") Then
STRING082 = ""
Gosub LABEL029
Continue
Endif
If (STRING082 == "D") Then
STRING082 = ""
Gosub LABEL030
Continue
Endif
If (STRING082 == "F") Then
STRING082 = ""
Gosub LABEL031
Continue
Endif
If (STRING082 == "C") Then
STRING082 = ""
Gosub LABEL032
Continue
Endif
If (STRING082 == "S") Then
If (Left(STRING012, 1) == "(") Then
Newline
PrintLn STRING068
Newline
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL024
Endif
Gosub LABEL042
:LABEL024
STRING082 = ""
Continue
Endif
If (STRING082 == "MENU") Then
STRING082 = ""
If (Exist(STRING023)) Then
Gosub LABEL047
Goto LABEL025
Endif
Log " ■ Error: ZSRCHTXT file not found!", 0
PrintLn "@X0CText Search Menu file not found - Please notify Sysop!"
:LABEL025
Continue
Endif
If ((STRING082 == "H") || (STRING082 == "?")) Then
STRING082 = ""
If (Exist(STRING031)) Then
DispFile STRING031, 4 + 2
Goto LABEL026
Endif
Log " ■ Error: ZHLPSTXT file not found!", 0
PrintLn "@X0CSearch Text Operation Help file not found - Please notify Sysop!"
:LABEL026
If (!U_Expert || BOOLEAN002) Wait
Continue
Endif
If (STRING082 == "Q") Then
Continue
Endif
If (STRING082 == "") Then
STRING082 = ""
Continue
Endif
STRING082 = ""
DispText 56, 256 + 128 + 2048
Newline
If (!U_Expert || BOOLEAN002) Wait
EndWhile
STRING082 = ""
Return
:LABEL027
InputStr STRING053, STRING006, 7, 50, STRING075, STRING083 + 8 + 4 + 2
STRING006 = Trim(STRING006, " ")
Return
:LABEL028
InputStr STRING054, STRING007, 7, 50, STRING075, STRING083 + 8 + 4 + 2
STRING007 = Trim(STRING007, " ")
Return
:LABEL029
InputStr STRING056, STRING008, 7, 6, Mask_Num(), STRING083 + 8 + 4 + 2
STRING008 = Trim(STRING008, " ")
If ((Len(STRING008) < 6) || !ValDate(STRING008)) STRING008 = "000000"
Return
:LABEL030
InputStr STRING057, STRING009, 7, 45, Mask_Num() + "PAU,-", STRING083 + 8 + 4 + 2
STRING009 = Trim(STRING009, " ")
STRING009 = Replace(STRING009, " ", "")
For INTEGER010 = 1 To 20
STRING009 = ReplaceStr(STRING009, ",,", ",")
STRING009 = ReplaceStr(STRING009, "AA", "A")
STRING009 = ReplaceStr(STRING009, "PP", "P")
STRING009 = ReplaceStr(STRING009, "UU", "U")
Next
STRING009 = LTrim(STRING009, ",")
STRING009 = RTrim(STRING009, ",")
If ((STRING009 == "") || (InStr(STRING009, "A") <> 0)) STRING009 = "A"
Return
:LABEL031
STRING010 = Left(STRING010, 1)
InputStr STRING058, STRING010, 7, 1, STRING078, STRING083 + 8 + 4 + 2
STRING010 = Trim(STRING010, " ")
If (STRING010 == "") STRING010 = "N"
If (Left(STRING010, 1) == "Y") Then
STRING010 = "Yes"
Else
STRING010 = "No"
Endif
Return
:LABEL032
STRING011 = Left(STRING011, 1)
InputStr STRING046, STRING011, 7, 1, STRING078, STRING083 + 8 + 4 + 2
STRING011 = Trim(STRING011, " ")
If (STRING010 == "") STRING011 = "Y"
If (Left(STRING011, 1) == "Y") Then
STRING011 = "Yes"
Else
STRING011 = "No"
Endif
Return
:LABEL033
STRING082 = ""
While (STRING082 == "") Do
Gosub LABEL045
OpText STRING012
If (!U_Expert || BOOLEAN002) Gosub LABEL050
InputStr STRING051, STRING082, 7, 4, "MENDFCSUH?Q", STRING083 + 8
STRING082 = Trim(STRING082, " ")
If (STRING082 == "ME") STRING082 = "MENU"
If (STRING082 == "MEN") STRING082 = "MENU"
If (STRING082 == "M") Then
STRING082 = ""
Gosub LABEL037
Continue
Endif
If (STRING082 == "N") Then
STRING082 = ""
Gosub LABEL029
Continue
Endif
If (STRING082 == "D") Then
STRING082 = ""
Gosub LABEL030
Continue
Endif
If (STRING082 == "F") Then
STRING082 = ""
Gosub LABEL031
Continue
Endif
If (STRING082 == "C") Then
STRING082 = ""
Gosub LABEL032
Continue
Endif
If (STRING082 == "S") Then
If (Left(STRING012, 1) == "(") Then
Newline
PrintLn STRING068
Newline
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL034
Endif
Gosub LABEL042
:LABEL034
STRING082 = ""
Continue
Endif
If (STRING082 == "MENU") Then
STRING082 = ""
If (Exist(STRING024)) Then
Gosub LABEL050
Goto LABEL035
Endif
Log " ■ Error: ZSRCHFLE file not found!", 0
PrintLn "@X0CFile Search Menu file not found - Please notify Sysop!"
:LABEL035
Continue
Endif
If ((STRING082 == "H") || (STRING082 == "?")) Then
STRING082 = ""
If (Exist(STRING032)) Then
DispFile STRING032, 4 + 2
Goto LABEL036
Endif
Log " ■ Error: ZHLPSFLE file not found!", 0
PrintLn "@X0CSearch File Operation Help file not found - Please notify Sysop!"
:LABEL036
If (!U_Expert || BOOLEAN002) Wait
Continue
Endif
If (STRING082 == "Q") Then
Continue
Endif
If (STRING082 == "") Then
STRING082 = ""
Continue
Endif
STRING082 = ""
DispText 56, 256 + 128 + 2048
Newline
If (!U_Expert || BOOLEAN002) Wait
EndWhile
STRING082 = ""
Return
:LABEL037
InputStr STRING055, STRING005, 7, 12, STRING075, STRING083 + 8 + 4 + 2
STRING005 = Trim(STRING005, " ")
If (InStr(STRING005, ".") == 0) STRING005 = Left(STRING005, 8)
If ((InStr(STRING005, ".") == 0) && (STRING005 <> "")) STRING005 = STRING005 + ".*"
Return
:LABEL038
STRING082 = ""
While (STRING082 == "") Do
Gosub LABEL046
OpText STRING012
If (!U_Expert || BOOLEAN002) Gosub LABEL053
InputStr STRING052, STRING082, 7, 4, "MENDFCSUH?Q", STRING083 + 8
STRING082 = Trim(STRING082, " ")
If (STRING082 == "ME") STRING082 = "MENU"
If (STRING082 == "MEN") STRING082 = "MENU"
If (STRING082 == "N") Then
STRING082 = ""
Gosub LABEL029
Continue
Endif
If (STRING082 == "D") Then
STRING082 = ""
Gosub LABEL030
Continue
Endif
If (STRING082 == "F") Then
STRING082 = ""
Gosub LABEL031
Continue
Endif
If (STRING082 == "C") Then
STRING082 = ""
Gosub LABEL032
Continue
Endif
If (STRING082 == "S") Then
If (Left(STRING012, 1) == "(") Then
Newline
PrintLn STRING068
Newline
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL039
Endif
Gosub LABEL042
:LABEL039
STRING082 = ""
Continue
Endif
If (STRING082 == "MENU") Then
STRING082 = ""
If (Exist(STRING025)) Then
Gosub LABEL053
Goto LABEL040
Endif
Log " ■ Error: ZSRCHDTE file not found!", 0
PrintLn "@X0CDate Search Menu file not found - Please notify Sysop!"
:LABEL040
Continue
Endif
If ((STRING082 == "H") || (STRING082 == "?")) Then
STRING082 = ""
If (Exist(STRING033)) Then
DispFile STRING033, 4 + 2
Goto LABEL041
Endif
Log " ■ Error: ZHLPSDTE file not found!", 0
PrintLn "@X0CSearch Date Operation Help file not found - Please notify Sysop!"
:LABEL041
If (!U_Expert || BOOLEAN002) Wait
Continue
Endif
If (STRING082 == "Q") Then
Continue
Endif
If (STRING082 == "") Then
STRING082 = ""
Continue
Endif
STRING082 = ""
DispText 56, 256 + 128 + 2048
Newline
If (!U_Expert || BOOLEAN002) Wait
EndWhile
STRING082 = ""
Return
:LABEL042
STRING082 = "Y"
If (Exist(STRING035)) Then
DispFile STRING035, 4 + 2
Else
Log " ■ Error: SCAN file not found!", 0
Endif
InputStr STRING047, STRING082, 7, 1, STRING078, STRING083 + 8 + 4 + 2
STRING082 = Trim(STRING082, " ")
If (STRING082 == "N") Return
Select Case (Left(STRING012, 1))
Case "Z"
Log " ■ Searching directories for text", 0
Case "L"
Log " ■ Searching directories for filename(s)", 0
Case "N"
Log " ■ Searching directories since MMDDYY", 0
End Select
Log " ■ (" + STRING012 + ")", 0
If (Left(STRING011, 1) == "Y") Then
BOOLEAN003 = 1
BOOLEAN004 = 0
If (Exist(STRING036)) Then
DispFile STRING036, 4 + 2
Else
Log " ■ Error: SCANNING file not found!", 0
Endif
ShowOff
CdChkOff
KbdChkOff
If (Exist(STRING042 + STRING040)) Goto LABEL043
If (Exist(STRING038)) Copy STRING038, STRING042 + STRING040
:LABEL043
OpenCap STRING042 + STRING040, INTEGER011
INTEGER012 = GetY()
KbdStuff STRING079
Dir STRING012
CloseCap
CdChkOn
KbdChkOn
ShowOn
AnsiPos 0, INTEGER012 - 1
ClrEol
AnsiPos 0, INTEGER012
Else
Dir STRING012
Endif
If (Exist(STRING037)) Then
DispFile STRING037, 4 + 2
Else
Log " ■ Error: SCANDONE file not found!", 0
Endif
If (!U_Expert || BOOLEAN002) Wait
Return
:LABEL044
If (STRING006 <> "") Then
STRING012 = "Z " + STRING006
If (STRING007 <> "") STRING012 = STRING012 + " & ! " + STRING007
If ((STRING008 <> "") && (STRING008 <> "000000")) STRING012 = STRING012 + " N " + STRING008
If (STRING009 <> "") STRING012 = STRING012 + " " + STRING009
If (Left(STRING010, 1) == "Y") STRING012 = STRING012 + " D"
Else
STRING012 = "(N/A)"
Endif
Return
:LABEL045
If (STRING005 <> "") Then
STRING012 = "L " + STRING005
If ((STRING008 <> "") && (STRING008 <> "000000")) STRING012 = STRING012 + " N " + STRING008
If (STRING009 <> "") STRING012 = STRING012 + " " + STRING009
If (Left(STRING010, 1) == "Y") STRING012 = STRING012 + " D"
Else
STRING012 = "(N/A)"
Endif
Return
:LABEL046
If ((STRING008 <> "") && (STRING008 <> "000000")) Then
STRING012 = "N " + STRING008
If (STRING009 <> "") STRING012 = STRING012 + " " + STRING009
If (Left(STRING010, 1) == "Y") STRING012 = STRING012 + " D"
Else
STRING012 = "(N/A)"
Endif
Return
:LABEL047
If (Exist(STRING023)) Then
FOpen 0, STRING023, 0, 0
:LABEL048
If (Ferr(0)) Goto LABEL049
STRING082 = ""
FGet 0, STRING082
STRING082 = ReplaceStr(STRING082, "@MATCHING@", STRING006)
STRING082 = ReplaceStr(STRING082, "@EXCLUDING@", STRING007)
STRING082 = ReplaceStr(STRING082, "@FILEDATE@", STRING008)
STRING082 = ReplaceStr(STRING082, "@DIRECTORIES@", STRING009)
STRING082 = ReplaceStr(STRING082, "@FLAGDL@", STRING010)
STRING082 = ReplaceStr(STRING082, "@CAPTURE@", STRING011)
STRING082 = ReplaceStr(STRING082, "@SRCHCMD@", STRING012)
PrintLn STRING082
Goto LABEL048
:LABEL049
FClose 0
Else
Log " ■ Error: ZSRCHTXT file not found!", 0
Endif
STRING082 = ""
Return
:LABEL050
If (Exist(STRING024)) Then
FOpen 0, STRING024, 0, 0
:LABEL051
If (Ferr(0)) Goto LABEL052
STRING082 = ""
FGet 0, STRING082
STRING082 = ReplaceStr(STRING082, "@FILENAME@", STRING005)
STRING082 = ReplaceStr(STRING082, "@DIRECTORIES@", STRING009)
STRING082 = ReplaceStr(STRING082, "@FILEDATE@", STRING008)
STRING082 = ReplaceStr(STRING082, "@FLAGDL@", STRING010)
STRING082 = ReplaceStr(STRING082, "@CAPTURE@", STRING011)
STRING082 = ReplaceStr(STRING082, "@SRCHCMD@", STRING012)
PrintLn STRING082
Goto LABEL051
:LABEL052
FClose 0
Else
Log " ■ Error: ZSRCHFLE file not found!", 0
Endif
STRING082 = ""
Return
:LABEL053
If (Exist(STRING025)) Then
FOpen 0, STRING025, 0, 0
:LABEL054
If (Ferr(0)) Goto LABEL055
STRING082 = ""
FGet 0, STRING082
STRING082 = ReplaceStr(STRING082, "@FILEDATE@", STRING008)
STRING082 = ReplaceStr(STRING082, "@DIRECTORIES@", STRING009)
STRING082 = ReplaceStr(STRING082, "@FLAGDL@", STRING010)
STRING082 = ReplaceStr(STRING082, "@CAPTURE@", STRING011)
STRING082 = ReplaceStr(STRING082, "@SRCHCMD@", STRING012)
PrintLn STRING082
Goto LABEL054
:LABEL055
FClose 0
Else
Log " ■ Error: ZSRCHDTE file not found!", 0
Endif
STRING082 = ""
Return
:LABEL056
STRING005 = ""
STRING006 = ""
STRING007 = ""
STRING008 = "000000"
STRING009 = "A"
STRING010 = "No"
STRING011 = "Yes"
STRING012 = "(N/A)"
BOOLEAN003 = 0
BOOLEAN004 = 0
BOOLEAN005 = 0
If (Exist(STRING045 + STRING041)) Delete STRING045 + STRING041
If (Exist(STRING042 + STRING040)) Delete STRING042 + STRING040
Return
:LABEL057
Newline
If (Exist(STRING042 + STRING040)) Then
STRING013 = String(FileInf(STRING042 + STRING040, 4))
OpText STRING013
PrintLn STRING059
Newline
OpText STRING041
Print STRING060
STRING044 = ReplaceStr(STRING044, "@COMPFILE@", STRING045 + STRING041)
STRING044 = ReplaceStr(STRING044, "@ZCAPFILE@", STRING042 + STRING040)
Shell 1, INTEGER011, STRING043, STRING044
STRING014 = String(FileInf(STRING045 + STRING041, 4))
OpText STRING014
PrintLn STRING061
OpText STRING041
Print STRING062
If (Exist(STRING042 + STRING040)) Delete STRING042 + STRING040
PrintLn STRING063
Newline
If (BOOLEAN005) Then
PrintLn STRING067
Flag STRING045 + STRING041
If (!U_Expert || BOOLEAN002) Wait
Goto LABEL058
Endif
If (BOOLEAN005) Goto LABEL058
PrintLn STRING065
Download STRING041
BOOLEAN004 = 1
:LABEL058
If (!U_Expert || BOOLEAN002) Wait
Endif
Return
Endif
:LABEL059
Newline
If (BOOLEAN005) Then
Gosub LABEL057
ElseIf (BOOLEAN003 && !BOOLEAN004) Then
STRING082 = STRING076
OpText STRING041
PrintLn STRING071
Newline
InputStr STRING072, STRING082, 7, 1, STRING078, STRING083 + 8 + 4 + 2
STRING082 = Trim(STRING082, " ")
If (STRING082 <> "N") Then
STRING082 = "D"
InputStr STRING074, STRING082, 7, 1, "DF", STRING083 + 8 + 4 + 2
If (STRING082 == "D") BOOLEAN005 = 0
If (STRING082 == "F") BOOLEAN005 = 1
Gosub LABEL057
Goto LABEL060
Endif
If (Exist(STRING045 + STRING041)) Delete STRING045 + STRING041
If (Exist(STRING042 + STRING040)) Delete STRING042 + STRING040
Endif
:LABEL060
If (INTEGER001 <> 1) Then
PrintLn "@X07[@X0CThis version of ZippyList is " + STRING003 + "@X07]"
PrintLn "@X07[@X0ACall DavaSoft to register - BBS: 718-967-6827 Voice: 718-967-5713@X07]"
Newline
PrintLn "@X0AReturning to system ..."
ElseIf (INTEGER001 == 1) Then
PrintLn "@X07Returning to @X0A" + STRING016 + "@X07 ..."
Endif
Log "ZippyList Ended at " + Left(Time(), 5), 0
If (DbgLevel() > 0) DbgLevel 0
End
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 1 End
; 1 Cls
; 1 ClrEol
; 20 Wait
; 254 Goto
; 254 Let
; 3 Print
; 44 PrintLn
; 190 If
; 21 DispFile
; 5 FOpen
; 5 FClose
; 63 FGet
; 1 GetUser
; 5 Delete
; 40 Log
; 16 InputStr
; 40 Gosub
; 24 Return
; 1 CdChkOn
; 1 CdChkOff
; 1 Delay
; 28 Newline
; 5 Newlines
; 1 Shell
; 5 DispText
; 1 Beep
; 1 KbdStuff
; 3 Dir
; 1 KbdChkOn
; 1 KbdChkOff
; 14 OpText
; 2 AnsiPos
; 1 OpenCap
; 1 CloseCap
; 1 DbgLevel
; 1 ShowOn
; 1 ShowOff
; 1 Copy
; 1 Flag
; 1 Download
;
;
; ■ Functions used :
;
; 4 *
; 186 +
; 6 -
; 98 ==
; 21 <>
; 4 <
; 4 <=
; 2 >
; 6 >=
; 161 !
; 13 &&
; 38 ||
; 7 Len(
; 30 Upper()
; 3 Mid()
; 20 Left()
; 2 Right()
; 3 Ferr()
; 20 Chr()
; 3 Asc()
; 3 InStr()
; 1 LTrim()
; 5 RTrim()
; 20 Trim()
; 1 Date()
; 2 Time()
; 3 U_LDir()
; 1 Ver()
; 1 NoChar()
; 1 YesChar()
; 7 Replace()
; 2 Strip()
; 10 String()
; 2 Mask_Num()
; 23 PPEPath()
; 1 ValDate()
; 4 PcbNode()
; 1 GetToken()
; 8 GetEnv()
; 39 Exist()
; 1 LangExt()
; 1 GetY()
; 1 DefColor()
; 3 FileInf()
; 1 PPEName()
; 3 DbgLevel()
; 30 ReplaceStr()
; 1 ToInteger()
;
;------------------------------------------------------------------------------
;
; Analysis flags : Sf
;
; S - Shell to DOS ■ 5
; This may be normal if the PPE need to execute an external command,
; but may be actually anything... nasty (formating HD, rebooting,...)
; or usefull (sorting, maintenance,...). Check!
; ■ Search for : SHELL
;
; f - Flag files for download ■ 3
; This may be normal if a PPE needs to send some files, but since
; this statement allows flagging of any file on the hard disk, you
; have to be carefull. Check!
; ■ Search for : FLAG
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 3 For/Next
; 5 While/EndWhile
; 114 If/Then or If/Then/Else
; 1 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------